package cn.yitun.chat.yitunserverimapicore.business.group.service;

import cn.yitun.chat.yituncommonmessage.result.ResultMessage;
import cn.yitun.chat.yitunservercommonlib.crud.yitun.CrudService;
import cn.yitun.chat.yitunservercommonlib.dataentity.dto.group.GroupRelationDto;
import cn.yitun.chat.yitunservercommonlib.dataentity.po.group.GroupRelationInfo;
import cn.yitun.chat.yitunservercommonlib.dataentity.vo.group.GroupRelationVo;

import java.util.List;

/**
 * 
 * Date 2019-01-20 21:26:21<br>
 * Description
 * 
 * @author yitun
 * @since 1.0.0
 */
public interface GroupRelationService
		extends CrudService<GroupRelationDto, GroupRelationInfo, GroupRelationVo>{


	/**
	 * Date 2019-01-20 17:31:47<br>
	 * Description 获取列表
	 * @author yitun
	 * @param userId
	 * @return
	 * @since 1.0.0
	 */
	List<GroupRelationVo> getListByUserId(Long userId);

	/**
	 * Date 2019-01-27 09:50:38<br>
	 * Description
	 * @author yitun
	 * @param userId
	 * @param groupId
	 * @return
	 * @since 1.0.0
	 */
	GroupRelationVo getByGroupId(Long userId, Long groupId);

	/**
	 * Date 2019-01-20 21:18:07<br>
	 * Description 移动群到其它分组
	 * @author yitun
	 * @param userId
	 * @param groupIds
	 * @param categoryId
	 * @return
	 * @since 1.0.0
	 */
	ResultMessage moveCategory(Long key, Long userId, List<Long> groupIds, Long categoryId) ;

	/**
	 * Date 2019-01-20 14:17:03<br>
	 * Description 修改备注
	 * @author yitun
	 * @param userId
	 * @param groupId
	 * @param remark
	 * @return
	 * @since 1.0.0
	 */
	ResultMessage updateRemark(Long key, Long userId, Long groupId, String remark);
}
